import pandas as pd
import matplotlib.pyplot as plt

# 1. 读取 CSV 文件
df = pd.read_csv("data/ETTh1问题.csv", parse_dates=["date"])
# 2. 设置时间戳为索引
df["date"] = pd.to_datetime(df["date"])  # 转换为时间格式
df.set_index("date", inplace=True)
df_interpolated = df.interpolate(method="time")  # 时间序列插值
df_interpolated.to_csv("data/ETTh1_填充后.csv", index=True)
print("插值填充完成，已保存到 'ETTh1_填充后.csv'")
std_values = df_interpolated.std()
print("各列的标准差：")
print(std_values)
total_std = std_values.sum()
print("标准差总和：", total_std)
# 自动计算关键变量的数量（列数）
num_variables = len(std_values)
# 计算平均标准差
avg_std = total_std / num_variables
print("平均标准差：", avg_std)
# 判断是否大于 1
if avg_std > 1:
    print("数据波动较大，平均标准差 > 1")
else:
    print("数据较稳定，平均标准差 ≤ 1")
